package main

import "fmt"

/*
*
使用切片传参 就很简单了
这种方式 其实是引用传递 内部修改 外部会得到修改后的值
结论：
1、当固定长度的数组在传参过程中 会进行值拷贝
2、使用切片的方式传递 动态数组的话，传参其实是引用传递（可以内外修改），不同元素长度的动态数组传参都是一样的
*/
func printArray(myArray []int) {

	for _, value := range myArray {
		fmt.Println("value= ", value)
	}

	myArray[0] = 1000
}

func main() {

	//动态数组 切片 slice_0
	myArray := []int{1, 2, 3, 4}

	fmt.Printf("my array types %T\n", myArray)

	printArray(myArray)
	fmt.Println("=========")
	for _, value := range myArray {
		fmt.Println("value= ", value)
	}

}
